//设置请求头
const CryptoJS = require('./cryp')
var getUuid = function() {
  var len = 32;//32长度
  var radix = 16;//16进制
  var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
  var uuid = [], i;
  radix = radix || chars.length;
  if(len) {
    for (i = 0; i < len; i++)uuid[i] = chars[0 | Math.random() * radix];
  } else {
    var r;
    uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
    uuid[14] = '4';
    for(i = 0; i< 36; i++) {
      if (!uuid[i]) {
        r = 0 | Math.random() * 16;
        uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r];
      }
    }
  }
  return uuid.join('');
}

var getStatelessCheckParams = function ( requestUrl ) {
  var memberInfo = wx.getStorageSync("memberInfo");
  var digestKey = (memberInfo && memberInfo.digestKey) ? memberInfo.digestKey : '38bf88c5ca9f43741e9795ef0fd92b1a4f329bd3217136fe2cc3ce6776259349'
  var time = Math.floor(new Date().getTime() / 1000)
  var randomkey = getUuid()
  var digestParam = time + randomkey + requestUrl
  var digest = CryptoJS.HmacSHA256(digestParam, digestKey)
  var authentication = randomkey + ":" + digest;
  var memberId = (memberInfo && memberInfo.id) ? memberInfo.id:-1;
  return {
    "authentication": authentication,
    "time": time,
    "randomKey": randomkey,
    "memberId": memberId
  }
}
module.exports = getStatelessCheckParams